﻿/// <reference path="/Scripts/Code/Functions.js" />
/// <reference path="/Scripts/jquery-1.7.2.js" />
/// <reference path="/Scripts/modernizr-2.5.3.js" />

// namespace Connexion
var Connexion = (function()
{
    var my = {},
    _login = "",
    _password = "",
    _loginOK = false,
    _passwordOK = false;

    my.loaded = function()
    {
        if (Modernizr.mq('only all and (max-width: 320px)'))
        {
            window.location = "http://m.newstore.oneprog.com";
        }
        
        _login = $("#txt_login").val();
        _loginOK = _login !== "" ? true : false;
        _password = $("#txt_password").val();
        _passwordOK = _password !== "" ? true : false;
        initEvents();
    };

    // INITIALISE LES EVENEMENTS DE LA PAGE
    function initEvents()
    {
        $("#form1").submit(function()
        {
            checkFormFields()
            if (_loginOK && _passwordOK)
                checkIdentity(_login, _password);
        });

        // ÉVÈNEMENT : APPUI SUR LE BOUTON CONNEXION
        $("#btn_connexion").click(function()
        {
            checkFormFields()
            if (_loginOK && _passwordOK)
                checkIdentity(_login, _password);
        });

        // ÉVÈNEMENT : REMPLISSAGE DU LOGIN
        $("#txt_login").bind("change keyup", function()
        {
            //if (typeof console !== "undefined") console.log($(this).val()); // Debugage console

            _login = $(this).val();
            if (_login !== "")
                _loginOK = true;
            else
                _loginOK = false;
        });

        // ÉVÈNEMENT : REMPLISSAGE DU PASSWORD
        $("#txt_password").bind("change keyup", function()
        {
            //if (typeof console !== "undefined") console.log($(this).val()); // Debugage console

            _password = $(this).val();
            if (_password !== "")
                _passwordOK = true;
            else
                _passwordOK = false;
        });
    }

    function checkFormFields()
    {
        if ($("#txt_login").val() == "")
        {
            if (typeof console != null) console.log("login vide");
            $("#txt_login").parent().next().find(".infoForm").show();
        }
    }

    // VERIFIE L'IDENTIFICATION D'UN UTILISATEUR
    function checkIdentity(login, password)
    {
        /// <summary>Vérifie l'identification d'un utilisateur</summary>
        /// <param name="login" type="String">Le login utilisateur</param>
        /// <param name="password" type="String">Le mot de passe utilisateur</param>

        //if (typeof console !== "undefined") console.log("checkIdentity() :" + login + ";" + password); // Debugage console

        var msg = "";

        $(".loading").css("visibility", "visible"); // Loading
        $.ajax(
        {
            url: "/Connexion/Validation",
            type: "POST",
            data: JSON.stringify({ Login: login, Password: password }),
            dataType: 'json',
            contentType: "application/json; charset=utf-8",
            success: function(data, textStatus, jqXHR)
            {
                $(".loading").css("visibility", "hidden");
                if (typeof console !== "undefined") console.log("Retour : id = " + data[1]); // Debugage console
                if (data == null)
                {
                    // Envoi d'un message d'erreur
                    msg += "Le résultat est null";
                    Functions.leadError(msg);
                    return;
                }
                if (data[0] == "-1")
                {
                    // Envoi d'un message d'erreur
                    msg += data[1];
                    Functions.leadError(msg);
                    return;
                }
                if (data[0] == "0")
                {
                    // Compte inexistant
                    msg += "Compte inexistant";
                    Functions.leadError(msg);
                }
                else
                {
                    // Redirection vers MonCompte

                    window.location.href = "/Accueil";
                }
            },
            error: function(jqXHR, textStatus, errorThrown)
            {
                if (typeof console !== "undefined") console.log("Erreur : " + textStatus); // Debugage console

                $(".loading").css("visibility", "hidden");
                Functions.leadError(textStatus);
            }
        });
    }

    return my;
} ());



Functions.addLoadListener(Connexion.loaded);
